﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ODataRegression.Framework.Core.Shared;

namespace ODataRegression.Framework.Core.TestOM
{
    class AtomResponceElement
    {
        public List<AtomResponceElementProperty> Properties = new List<AtomResponceElementProperty>();
    }

    class Feed
    {
        string Url;
        public long Count;
        public Feed(string url)
        {
            this.Url = url;
        }
       public  List<AtomResponceElement> Responces = new List<AtomResponceElement>();

        private void LoadFeedFromUrl()
        {

        }
    }

    class AtomResponceElementProperty
    {
       public string Name;
       public AtomDataTypes DataType;
       public string Value;
       public Dictionary<string, object> ExtendedAttributes = new Dictionary<string, object>();
       public AtomResponceElementProperty(string Name, AtomDataTypes DataType, string Value)
       {

       }
       public string FormatedValueString
        {

            get
            {
                switch (DataType)
                {
                    case AtomDataTypes.Binary:
                        break;
                    case AtomDataTypes.Boolean:
                        break;
                    case AtomDataTypes.Byte:
                        break;
                    case AtomDataTypes.DateTime:
                        break;
                    case AtomDataTypes.DateTimeOffset:
                        break;
                    case AtomDataTypes.Decimal:
                        break;
                    case AtomDataTypes.Double:
                        break;
                    case AtomDataTypes.Float:
                        break;
                    case AtomDataTypes.Guid:
                        break;
                    case AtomDataTypes.Int16:
                        break;
                    case AtomDataTypes.Int32:
                        break;
                    case AtomDataTypes.Int64:
                        break;
                    case AtomDataTypes.SByte:
                        break;
                    case AtomDataTypes.String:
                        break;
                    case AtomDataTypes.Time:
                        break;
                    default:
                        break;

                        throw new ApplicationException("Not Implemented");
                }
                return null;
            }
        }

    }
}
